Alteryxで列にあるデータを列の項目にしたい
こんにちは。Alteryxサポートエンジニアとして勉強中のスズです。
このシリーズでは、Alteryxを触り始めた際に出てくる「こうしたいけどやり方が分からない」「どのツールを使えばいいか分からない」といった疑問を切り口として、Alteryxの機能をご紹介していきます。
今回のテーマは、「列にあるデータを列の項目にしたい」です。
列にあるデータを列の項目に変換したい
上の表では、「顧客」「商品カテゴリー」「数量」という項目が並んでいます。
この表の「商品カテゴリー」にある「ノート」などのデータを列の項目に変換します。また、「数量」をデータとして配置するようにします。
列を変換するため、[Transform]→[Cross Tab]を使用します。
Cross Tabツールの設定画面にて、[Group Data by these Values]は「顧客」にチェックし、「顧客」でグループ化します。
[New Columns Headers]には、列の項目になる「商品カテゴリー」を選択します。また列に入れるデータとして、[Values for New Columns]に「数量」を選択します。
[Method for Aggregating Values]には、値の合計を出力する「Sum」を選択します。今回はそれぞれ値が1つしかないため、「数量」に表示されている値がそのまま使用されます。
実行して結果を確認。
「ノート」などが列の項目となり、「数量」がデータとして配置されていることが確認できました。
[Method for Aggregating Values]のオプション
[Method for Aggregating Values]で選択できるオプションは、対象のデータが文字列が数値かによって異なります。 Alteryxのヘルプにある内容をご紹介いたしします。
文字列データのオプション:
Concatenate | Separatorフィールドで指定された区切り文字を使用して値を区切ります。 |
---|---|
First | 最初に見つかった値を表示します。 |
Last | 最後に見つかった値を表示します。 |
数値データのオプション:
Sum | 値を合計します。 |
---|---|
Average | 値の平均を計算します。 |
Count (without Nulls) | Null値を除く値の数をカウントします。 |
Count (with Nulls) | Null値を含む値の数をカウントします。 |
Percent Row | 行の値に基づいて割合(%)を計算します。 |
Percent Column | 列の値に基づいて割合(%)を計算します。 |
Total Column | 全ての値を合計します。 |
Total Row | 値の合計を含む新しい行を追加します。 |
文字列のデータでConcatenateを指定してみた
今度は文字列のデータを用意して、Concatenateを試してみました。
上の画像のファイルでは、同じ顧客と商品カテゴリーで複数の商品を買っているケースがあります。
このファイルに対して、Cross Tabツールにて以下の通り設定します。
- Group Data by these Values: 顧客
- New Column Headers: 商品カテゴリー
- Values for New Columns: 商品
- Method for Aggregating Values: Concatenate
- Separatore: , (カンマ)
実行して結果を確認。
1人の顧客と1つの商品カテゴリーに対して複数の商品がある場合、カンマを使用して1つのマスに商品が入力されました。
最後に
今回はCross Tabツールを使用してデータを列の項目に変換する方法をご紹介しました。今後もAlteryxの機能をご紹介していきます。
Alteryxの導入なら、クラスメソッドにおまかせください
日本初のAlteryxビジネスパートナーであるクラスメソッドが、Alteryxの導入から活用方法までサポートします。14日間の無料トライアルも実施中ですので、お気軽にご相談ください。